/**
 * jims
 */
package com.jims.master.modules.csm.entity;

import com.jims.master.common.persistence.DataEntity;
import com.jims.master.modules.csm.entity.ExpDict;
import com.jims.master.modules.csm.entity.ExpSupplierCata;
import org.hibernate.validator.constraints.Length;

/**
 * 消耗品基本信息Entity
 * @author CTQ
 * @version 2017-03-02
 */
public class ExpInfo extends DataEntity<ExpInfo> {

    private static final long serialVersionUID = 1L;
    private ExpDict expDict;		// 消耗品字典ID
    private String packageSpec;		// 规格
    private String packageUnit;		// 单位
    private ExpSupplierCata  expSupplierCata;		// 厂家标识
    private String minSpec;		// 最小单位规格
    private String minUnits;		// 最小单位
    private Double packageNum;		// 包装数量
    private String passNo;		// 批准文号
    private String expItemNo; //产品编号
    private String exteriorPatentNo; //外观专利号
    private String companyRegistNo;  //企业登记号
    private String produceRecordNo;  //生产备案号
    private String goodsRecordNo;  //产品备案号
    private String produceLicenseNo;  //生产许可证号
    private String hygieneLicenseNo;  //卫生许可证号
    private String technologyRequireNo;  //产品技术要求编号
    private String medicalDeviceRegistNo;  //医疗器械注册证号
    private String executeStandardNo;  //执行标准
    private String testMethod;  //检测方法(时间)

    private String gmp;		// GMP标识 0-否，1-是
    private String expClass;		// 价格类型
    private String minUnitsName;   //最小单位名称
    private String packageUnitsName; //包装单位名称

    public ExpInfo() {
        super();
    }

    public ExpInfo(String id){
        super(id);
    }

    public ExpDict getExpDict() {
        return expDict;
    }

    public void setExpDict(ExpDict expDict) {
        this.expDict = expDict;
    }

    @Length(min=1, max=20, message="规格长度必须介于 1 和 20 之间")
    public String getPackageSpec() {
        return packageSpec;
    }

    public void setPackageSpec(String packageSpec) {
        this.packageSpec = packageSpec;
    }

    @Length(min=1, max=8, message="单位长度必须介于 1 和 8 之间")
    public String getPackageUnit() {
        return packageUnit;
    }

    public void setPackageUnit(String packageUnit) {
        this.packageUnit = packageUnit;
    }

    public ExpSupplierCata getExpSupplierCata() {
        return expSupplierCata;
    }

    public void setExpSupplierCata(ExpSupplierCata expSupplierCata) {
        this.expSupplierCata = expSupplierCata;
    }

    @Length(min=1, max=2, message="最小单位规格长度必须介于 1 和 2 之间")
    public String getMinSpec() {
        return minSpec;
    }

    public void setMinSpec(String minSpec) {
        this.minSpec = minSpec;
    }

    @Length(min=1, max=2, message="最小单位长度必须介于 1 和 2 之间")
    public String getMinUnits() {
        return minUnits;
    }

    public void setMinUnits(String minUnits) {
        this.minUnits = minUnits;
    }

    @Length(min=1, max=11, message="包装数量长度必须介于 1 和 11 之间")
    public Double getPackageNum() {
        return packageNum;
    }

    public void setPackageNum(Double packageNum) {
        this.packageNum = packageNum;
    }

    @Length(min=0, max=30, message="批准文号长度必须介于 0 和 30 之间")
    public String getPassNo() {
        return passNo;
    }

    public void setPassNo(String passNo) {
        this.passNo = passNo;
    }

    @Length(min=0, max=1, message="GMP标识 0-否，1-是长度必须介于 0 和 1 之间")
    public String getGmp() {
        return gmp;
    }

    public void setGmp(String gmp) {
        this.gmp = gmp;
    }

    @Length(min=1, max=1, message="价格类型长度必须介于 1 和 1 之间")
    public String getExpClass() {
        return expClass;
    }

    public void setExpClass(String expClass) {
        this.expClass = expClass;
    }

    public String getMinUnitsName() {
        return minUnitsName;
    }

    public void setMinUnitsName(String minUnitsName) {
        this.minUnitsName = minUnitsName;
    }

    public String getExpItemNo() {
        return expItemNo;
    }

    public void setExpItemNo(String expItemNo) {
        this.expItemNo = expItemNo;
    }

    public String getExteriorPatentNo() {
        return exteriorPatentNo;
    }

    public void setExteriorPatentNo(String exteriorPatentNo) {
        this.exteriorPatentNo = exteriorPatentNo;
    }

    public String getCompanyRegistNo() {
        return companyRegistNo;
    }

    public void setCompanyRegistNo(String companyRegistNo) {
        this.companyRegistNo = companyRegistNo;
    }

    public String getProduceRecordNo() {
        return produceRecordNo;
    }

    public void setProduceRecordNo(String produceRecordNo) {
        this.produceRecordNo = produceRecordNo;
    }

    public String getGoodsRecordNo() {
        return goodsRecordNo;
    }

    public void setGoodsRecordNo(String goodsRecordNo) {
        this.goodsRecordNo = goodsRecordNo;
    }

    public String getProduceLicenseNo() {
        return produceLicenseNo;
    }

    public void setProduceLicenseNo(String produceLicenseNo) {
        this.produceLicenseNo = produceLicenseNo;
    }

    public String getHygieneLicenseNo() {
        return hygieneLicenseNo;
    }

    public void setHygieneLicenseNo(String hygieneLicenseNo) {
        this.hygieneLicenseNo = hygieneLicenseNo;
    }

    public String getTechnologyRequireNo() {
        return technologyRequireNo;
    }

    public void setTechnologyRequireNo(String technologyRequireNo) {
        this.technologyRequireNo = technologyRequireNo;
    }

    public String getMedicalDeviceRegistNo() {
        return medicalDeviceRegistNo;
    }

    public void setMedicalDeviceRegistNo(String medicalDeviceRegistNo) {
        this.medicalDeviceRegistNo = medicalDeviceRegistNo;
    }

    public String getExecuteStandardNo() {
        return executeStandardNo;
    }

    public void setExecuteStandardNo(String executeStandardNo) {
        this.executeStandardNo = executeStandardNo;
    }

    public String getTestMethod() {
        return testMethod;
    }

    public void setTestMethod(String testMethod) {
        this.testMethod = testMethod;
    }

    public String getPackageUnitsName() {
        return packageUnitsName;
    }

    public void setPackageUnitsName(String packageUnitsName) {
        this.packageUnitsName = packageUnitsName;
    }
}